home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 4 / Meeting Pearls Vol. IV (1996)(GTI - Schatztruhe)[!].iso / Pearls / dev / boopsi / TextFieldClass / TestClass / Source / prefs_dis.c next >
C/C++ Source or Header  |  1994-11-12  |  5KB  |  230 lines

  1. /* This file contains empty template routines that
  2.  * the IDCMP handler will call uppon. Fill out these
  3.  * routines with your code or use them as a reference
  4.  * to create your program.
  5.  */
  6.  
  7. #include <graphics/text.h>
  8. #include <intuition/intuition.h>
  9. #include <intuition/gadgetclass.h>
  10. #include <gadgets/textfield.h>
  11.  
  12. #include <proto/intuition.h>
  13. #include <proto/gadtools.h>
  14.  
  15. #include "prefs.h"
  16.  
  17. extern struct Window *window;
  18. extern struct Gadget *text1_object;
  19. extern ULONG style;
  20. extern UWORD *pens;
  21.  
  22. int block_cursor_checkClicked( void )
  23. {
  24.     /* routine when gadget "Block Cursor" is clicked. */
  25.     SetGadgetAttrs(text1_object, window, NULL,
  26.                     TEXTFIELD_BlockCursor, TextFieldPrefsGadgets[GDX_block_cursor_check]->Flags & GFLG_SELECTED,
  27.                     TAG_DONE);
  28.     return TRUE;
  29. }
  30.  
  31. int disable_checkClicked( void )
  32. {
  33.     /* routine when gadget "Disable" is clicked. */
  34.     SetGadgetAttrs(text1_object, window, NULL,
  35.                     GA_Disabled, TextFieldPrefsGadgets[GDX_disable_check]->Flags & GFLG_SELECTED,
  36.                     TAG_DONE);
  37.     return TRUE;
  38. }
  39.  
  40. int no_ghost_checkClicked( void )
  41. {
  42.     /* routine when gadget "No Ghost" is clicked. */
  43.     SetGadgetAttrs(text1_object, window, NULL,
  44.                     TEXTFIELD_NoGhost, TextFieldPrefsGadgets[GDX_no_ghost_check]->Flags & GFLG_SELECTED,
  45.                     TAG_DONE);
  46.     return TRUE;
  47. }
  48.  
  49. int readonly_checkClicked( void )
  50. {
  51.     /* routine when gadget "Read Only" is clicked. */
  52.     SetGadgetAttrs(text1_object, window, NULL,
  53.                     TEXTFIELD_ReadOnly, TextFieldPrefsGadgets[GDX_readonly_check]->Flags & GFLG_SELECTED,
  54.                     TAG_DONE);
  55.     return TRUE;
  56. }
  57.  
  58. int italic_checkClicked( void )
  59. {
  60.     /* routine when gadget "Italic" is clicked. */
  61.     if (TextFieldPrefsGadgets[GDX_italic_check]->Flags & GFLG_SELECTED) {
  62.         style |= FSF_ITALIC;
  63.     } else {
  64.         style &= ~FSF_ITALIC;
  65.     }
  66.     SetGadgetAttrs(text1_object, window, NULL,
  67.                     TEXTFIELD_FontStyle, style,
  68.                     TAG_DONE);
  69.     return TRUE;
  70. }
  71.  
  72. int underline_checkClicked( void )
  73. {
  74.     /* routine when gadget "Underline" is clicked. */
  75.     if (TextFieldPrefsGadgets[GDX_underline_check]->Flags & GFLG_SELECTED) {
  76.         style |= FSF_UNDERLINED;
  77.     } else {
  78.         style &= ~FSF_UNDERLINED;
  79.     }
  80.     SetGadgetAttrs(text1_object, window, NULL,
  81.                     TEXTFIELD_FontStyle, style,
  82.                     TAG_DONE);
  83.     return TRUE;
  84. }
  85.  
  86. int bold_checkClicked( void )
  87. {
  88.     /* routine when gadget "Bold" is clicked. */
  89.     if (TextFieldPrefsGadgets[GDX_bold_check]->Flags & GFLG_SELECTED) {
  90.         style |= FSF_BOLD;
  91.     } else {
  92.         style &= ~FSF_BOLD;
  93.     }
  94.     SetGadgetAttrs(text1_object, window, NULL,
  95.                     TEXTFIELD_FontStyle, style,
  96.                     TAG_DONE);
  97.     return TRUE;
  98. }
  99.  
  100. int align_radioClicked( void )
  101. {
  102.     /* routine when gadget "" is clicked. */
  103.     ULONG align;
  104.  
  105.     switch (TextFieldPrefsMsg.Code) {
  106.         case 0:
  107.             align = TEXTFIELD_ALIGN_LEFT;
  108.             break;
  109.         case 1:
  110.             align = TEXTFIELD_ALIGN_CENTER;
  111.             break;
  112.         case 2:
  113.             align = TEXTFIELD_ALIGN_RIGHT;
  114.             break;
  115.     }
  116.     SetGadgetAttrs(text1_object, window, NULL,
  117.                     TEXTFIELD_Alignment, align,
  118.                     TAG_DONE);
  119.     return TRUE;
  120. }
  121.  
  122. int vcenter_checkClicked( void )
  123. {
  124.     /* routine when gadget "Vertical Centering" is clicked. */
  125.     SetGadgetAttrs(text1_object, window, NULL,
  126.                     TEXTFIELD_VCenter, TextFieldPrefsGadgets[GDX_vcenter_check]->Flags & GFLG_SELECTED,
  127.                     TAG_DONE);
  128.     return TRUE;
  129. }
  130.  
  131. int ruled_paper_checkClicked( void )
  132. {
  133.     /* routine when gadget "Ruled Paper" is clicked. */
  134.     SetGadgetAttrs(text1_object, window, NULL,
  135.                     TEXTFIELD_RuledPaper, TextFieldPrefsGadgets[GDX_ruled_paper_check]->Flags & GFLG_SELECTED,
  136.                     TAG_DONE);
  137.     return TRUE;
  138. }
  139.  
  140. int spacing_sliderClicked( void )
  141. {
  142.     /* routine when gadget "Spacing:" is clicked. */
  143.     SetGadgetAttrs(text1_object, window, NULL,
  144.                     TEXTFIELD_Spacing, TextFieldPrefsMsg.Code,
  145.                     TAG_DONE);
  146.     return TRUE;
  147. }
  148.  
  149. int blink_radioClicked( void )
  150. {
  151.     /* routine when gadget "" is clicked. */
  152.     ULONG blink;
  153.  
  154.     switch (TextFieldPrefsMsg.Code) {
  155.         case 0:
  156.             blink = 0;
  157.             break;
  158.         case 1:
  159.             blink = 750000;
  160.             break;
  161.         case 2:
  162.             blink = 500000;
  163.             break;
  164.         case 3:
  165.             blink = 250000;
  166.             break;
  167.     }
  168.     SetGadgetAttrs(text1_object, window, NULL,
  169.                     TEXTFIELD_BlinkRate, blink,
  170.                     TAG_DONE);
  171.     return TRUE;
  172. }
  173.  
  174. int border_radioClicked( void )
  175. {
  176.     /* routine when gadget "" is clicked. */
  177.     ULONG border;
  178.  
  179.     switch (TextFieldPrefsMsg.Code) {
  180.         case 0:
  181.             border = TEXTFIELD_BORDER_NONE;
  182.             break;
  183.         case 1:
  184.             border = TEXTFIELD_BORDER_BEVEL;
  185.             break;
  186.         case 2:
  187.             border = TEXTFIELD_BORDER_DOUBLEBEVEL;
  188.             break;
  189.     }
  190.     SetGadgetAttrs(text1_object, window, NULL,
  191.                     TEXTFIELD_Border, border,
  192.                     TAG_DONE);
  193.     return TRUE;
  194. }
  195.  
  196. int invert_checkClicked( void )
  197. {
  198.     /* routine when gadget "Inverted" is clicked. */
  199.     SetGadgetAttrs(text1_object, window, NULL,
  200.                     TEXTFIELD_Inverted, TextFieldPrefsGadgets[GDX_invert_check]->Flags & GFLG_SELECTED,
  201.                     TAG_DONE);
  202.     return TRUE;
  203. }
  204.  
  205. int partial_checkClicked( void )
  206. {
  207.     /* routine when gadget "Partial" is clicked. */
  208.     SetGadgetAttrs(text1_object, window, NULL,
  209.                     TEXTFIELD_Partial, TextFieldPrefsGadgets[GDX_partial_check]->Flags & GFLG_SELECTED,
  210.                     TAG_DONE);
  211.     return TRUE;
  212. }
  213.  
  214. int notepad_checkClicked( void )
  215. {
  216.     /* routine when gadget "Block Cursor" is clicked. */
  217.     if (TextFieldPrefsGadgets[GDX_notepad_check]->Flags & GFLG_SELECTED) {
  218.         SetGadgetAttrs(text1_object, window, NULL,
  219.                         TEXTFIELD_PaperPen,    pens[SHINEPEN],
  220.                         TEXTFIELD_LinePen,    pens[FILLPEN],
  221.                         TAG_DONE);
  222.     } else {
  223.         SetGadgetAttrs(text1_object, window, NULL,
  224.                         TEXTFIELD_PaperPen,    -1,
  225.                         TEXTFIELD_LinePen,    -1,
  226.                         TAG_DONE);
  227.     }
  228.     return TRUE;
  229. }
  230.